1. Field of the Invention
The present invention relates to systems and methods for testing packet data transmitters, and in particular, to systems and methods for testing multiple packet data transmitters contemporaneously.
2. Related Art
Increasingly, many well-known and popular data communications systems communicate via digital data signals in which the data is distributed among a number of data packets which are transmitted sequentially and then reassembled within the receiver, often following transmission along various distinct signal paths (e.g., as is done with the Internet). Conventional test equipment for measuring these data signals capture these data packets, store them and then transfer them for analysis. Often, the transfer and analysis of the captured data takes longer than the process by which they are captured from within the data signal, in part because of the need to transfer the captured data to remote analysis circuitry (e.g., a computer separate from the test equipment). Consecutive data packets are often closely spaced, particularly within data signals being transmitted at high data rates. Accordingly, conventional test equipment will often not measure consecutive packets, but instead will capture non-adjacent packets spaced in time by an interval approximating the time needed for analysis or measurement.
However, it is often desirable to capture consecutive packets, e.g., to analyze power variations from one packet to another. To do this with conventional test equipment, it would generally be necessary to increase the time interval available for capturing the data packets, thereby causing the capture window to become equal to the duration of the number of consecutive data packets sought to be captured and analyzed. This, however, is disadvantageous due to the fact that increasing the capture window will also slow down the overall data capture and analysis operation, since more data will need to be transferred between the capture memory and analysis engine. Further, in many communication systems, the data packets are not closely spaced, which means that much of the captured data is unused since it corresponds to the gaps between consecutive data packets.
Also, in multiple-input, multiple-out (MIMO) systems with a single data analysis engine, such as is often done in a production test environment, time efficiency in capturing and analyzing data packets becomes even more important. As is well know, a MIMO system uses multiple transmitters operated in parallel. Testing one transmitter at a time requires that the overall system be maintained in a transmit state of operation longer, and thereby potentially affect its performance due to increased heat buildup. To effectively avoid this would require testing one transmitter, powering the unit down, waiting for it to stabilize in its off state, and then power the unit up again to test the next transmitter, and so on. As a result, overall test time would increase significantly.
Another issue with testing such devices in a production environment is optimizing test time to increase throughput. This is often done by pipelining the various tests so as to separate the testing into sufficiently small steps to ensure high usage of the test equipment involved. When doing this, however, it must be kept in mind that any testing of a device under test (DUT) involves at least four time intervals: initial control, or setup, of the DUT; settling time for the DUT; capturing of the test data from the DUT; and analysis of the captured test data. Of these time intervals, generally the time interval for DUT setup is the longest, e.g., often four to five times as long as each of the intervals for DUT settling, data capture, and data analysis. Accordingly, it would be desirable to have a system and method for optimizing DUT test time notwithstanding the significant time overhead for DUT setup. One technique which has been used is the transmission and capturing of multiple data packets. While this can be effective in reducing test time, it also requires special control functions for generating the different data packet streams needed for the analysis.